User interface and method for viewing short messages on a wireless device

ABSTRACT

A method is performed by an electronic communication device. The method includes storing electronic messages, and storing criteria for determining whether a stored message is related to a current message. A current electronic message is displayed to a user of the communication device, including the current message&#39;s outside address and message body. The relevance of each of the stored messages to the current message is assessed based on the previously-stored criteria. Those messages that meet the criteria are selected and displayed along with the current message.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.11/338,944, filed Jan. 25, 2006, now U.S. Pat. No. 7,484,177, which is acontinuation of U.S. patent application Ser. No. 09/904,364, filed Jul.12, 2001, now U.S. Pat. No. 7,028,263, which claims benefit of U.S.Provisional Application No. 60/219,793, filed Jul. 19, 2000, all threeapplications hereby incorporated herein by reference.

TECHNICAL FIELD

This invention relates generally to a user interface for electronicmessaging. More particularly, the invention provides a user interfaceand method for displaying an electronic message in context with selectstored electronic messages. The invention is particularly well-suitedfor displaying short messaging service (SMS) messages on PersonalDigital Assistants, mobile communication devices, cellular phones, andwireless two-way e-mail communication devices (collectively referred toherein as “wireless devices”). The invention provides utility, however,in any device that displays electronic messages of any type.

BACKGROUND

Most cellular networks provide a short messaging service (SMS) whereby ashort electronic message may be transmitted between wireless devices.The user interfaces currently available for viewing SMS messages on awireless device, however, only enable a user to view the contents of onemessage at a time. For example, FIG. 1 shows a typical user interface 10for viewing an SMS message on a wireless device. This known userinterface 10 only displays the text of the message (“6:30 pm”), and thesender or receiver information associated with the message (“From:888-7342”). Viewing only the information shown in FIG. 1, a user may beunable to place the message in context. For instance, the message “6:30pm” might have been received in response to an earlier electronicmessage sent by the user. If the user could not recall his or herprevious message, however, the response “6:30 pm” would be meaningless.

SUMMARY

A user interface and method for viewing short messages on a wirelessdevice includes a viewing screen, a processor, a memory device and amessage software interface module. The memory device stores electronicmessages that have been transmitted or received by the wireless device.The message software interface module is executed by the processor and(a) displays a current electronic message on the viewing screen, (b)filters each of the electronic messages stored in the memory device toidentify one or more select messages meeting a pre-set criteria, and (c)displays the one or more select messages on the viewing screen alongwith the current electronic message.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a typical user interface for viewing SMS messages on awireless device;

FIG. 2 shows an exemplary user interface for viewing an electronicmessage in context with select stored electronic messages according toan embodiment of the claimed invention;

FIG. 3 is a flow diagram showing an exemplary method for identifyingstored electronic messages that are related to the current electronicmessage;

FIG. 4 is a flow diagram showing an exemplary method for determiningwhether the outside address of an incoming current electronic messagematches the outside address of a stored electronic message; and

FIG. 5 is a flow diagram showing an exemplary method for determiningwhether the outside address of an outgoing current electronic messagematches the outside address of a stored electronic message.

DETAILED DESCRIPTION

Referring now to the figures, FIG. 2 shows an exemplary user interface20 for a wireless device 21 that displays a current electronic message22 in context with select stored electronic messages 24. The userinterface 20 includes a viewing screen 26, a processor 28, a transceiver30, and a memory device 32. The user interface 20 also includes amessage software interface module 34 that is executed by the processor28. Operationally, the message software interface module 34 storesincoming and outgoing electronic messages 36 in the memory device 32,and enables a user to simultaneously view the current incoming oroutgoing message 22 and the select stored electronic messages 24.

The message software interface module 34 preferably saves and indexesevery electronic message transmitted or received by the wireless device21. In an alternative embodiment, the message software interface module34 may give the user the option to choose which messages to save andwhich to discard.

Each stored electronic message 36 preferably includes a message body 38and both a sender address 40 (the “From” address) and a receiver address42 (the “To” address). The sender and receiver addresses displayed onthe viewing screen 26 in FIG. 2, for example, are in the form of atelephone number which is typical for SMS messages. It should beunderstood, however, that the user interface 20 is not limited to usewith SMS messages. Rather, the user interface 20 may be used with anyform of electronic message, such as e-mail messages and SMS messages.

In addition to the sender and receiver addresses 40 and 42, the messagesoftware interface module 34 may also attach some type of indexing data44 to each message, such as an ordinal value or an electronic time-stampindicating when the message was transmitted or received.

Alternatively, the stored electronic messages 36 may include a messagebody 36, indexing data 44, and an outside address only. The outsideaddress of a message can be either the sender address 40 or the receiveraddress 42, depending upon the context of the message. For instance, ifa message was received by the wireless device 21, the outside address isthe sender address 42 (the “From” address). If, on the other hand, amessage has been, or will be, transmitted from the wireless device 21,then the outside address is the receiver address (the “To” address). Ifthe message software interface module 34 stores only the outsideaddress, however, then the indexing data 44 should preferably indicatewhether the stored electronic message was incoming or outgoing.

In addition to saving and indexing incoming and outgoing messages, themessage software interface module 34 filters the stored electronicmessages 36 to select messages relating to the current electronicmessage 22, and displays the current electronic message 22 along withthe select messages 26. The current electronic message 22 may preferablybe any message (stored or otherwise) currently being accessed by theuser. For instance, the current electronic message 22 may be a newmessage being composed by the user, a message recently received by thewireless device 21, or any stored electronic message 36 selected by theuser. Once a current electronic message 22 has been selected, themessage software interface module 34 preferably assesses each storedelectronic message 36 to identify select messages 24 having matchingoutside addresses. The message software interface module 34 may thenfurther limit the select messages 24 using the indexing data 44. Forexample, in FIG. 2 the current electronic message 22 includes theoutside address, “From: 888-7342.” The select messages 24 werepreferably identified from among the stored electronic messages 36because they each include the matching outside address “888-7342” aseither their sender address 40 or receiver address 42. In addition, themessage software interface module 34 may have limited the selectmessages 24 to those shown by comparing the indexing data 44 of thecurrent and stored electronic messages for proximity. The operation ofidentifying select messages 24 is discussed in further detail withrespect to FIGS. 3, 4 and 5.

In an alternative embodiment, the message software interface module 34may display those stored electronic messages 36 that are related to thecurrent electronic message 22 by only the proximity of their indexingdata 44. For instance, if the incoming and outgoing messages wereindexed according to the order in which they were transmitted orreceived, the message software interface module 34 may display, alongwith the current electronic message 22, a select number of the mostrecently saved messages. Preferably the number of displayed messages isselected by the user. If the current electronic message 22 is selectedfrom among the stored electronic messages 36, then the user may alsohave the option of displaying a select number of messages that weresaved either prior to or after the current electronic message 22.

In another embodiment, the message software interface module 34 mayidentify related stored electronic messages 24 by comparing the messagebody 38 of each stored electronic message 36 with a keyword selected bythe user. This alternative method of matching the current electronicmessage 22 with select stored electronic messages 24 may be implementedby itself, or as a means of further limiting the select messages 24identified by the other methods described herein.

FIG. 3 is a flow diagram showing an exemplary method 50 for identifyingstored electronic messages that are related to the current electronicmessage. In step 52, an electronic message being accessed by the user isset as the current electronic message 51. At step 54, the current senderand receiver addresses are obtained from the current electronic message51, and it is determined whether the current electronic message 51 isincoming or outgoing. An incoming message refers to an electronicmessage that has been received by the wireless device, and an outgoingmessage may refer to either (a) an electronic message that has beentransmitted by the wireless device; or (b) a new message being composedby the user.

In step 56, the indexing data is obtained from the current electronicmessage 51, or, if the current electronic message 51 has not yet beensaved, indexing data is generated for the current electronic message 51.For instance, the message software interface module 34 may index storedelectronic messages using an electronic time-stamp that indicates thetime and date a message was transmitted or received. If the currentelectronic message 51 has not been saved, then this information may beobtained from the transmission log, and an electronic time-stamp maythen be generated. Alternatively, if the stored electronic messages areindexed using an ordinal value, then an unsaved current electronicmessage may be assigned the next available value.

In step 58, all stored electronic messages are marked as unprocessed inrelation to the current electronic message 51. The stored electronicmessages may be marked by means of a Boolean flag, a stack of messageidentifiers, or any other means of distinguishing processed fromunprocessed messages. Then, in steps 60-72, each stored electronicmessage is processed by the message software interface module 34 todetermine if it is related to the current electronic message. Once astored electronic message has been processed, it is marked as processedin step 72, and steps 60-72 are repeated until every stored electronicmessage has been processed.

In the processing steps 60-72, related messages are selected, preferablybased on two pre-set criteria: (a) whether the outside address of thecurrent electronic message 51 matches the outside address of the storedelectronic message, and (b) whether the indexing data of the storedelectronic message is within a pre-selected storage proximity range inrelation to the indexing data of the current electronic message. Insteps 62 and 64, the sender and receiver addresses of a storedelectronic message are obtained from the message storage memory device65, and compared with the outside address of the current electronicmessage 51. An exemplary method for determining whether the outsideaddress of the stored electronic message matches the outside address ofthe current electronic message is described below with reference toFIGS. 4 and 5. If the outside addresses match, then the proximity of theindexing data is assessed in steps 66 and 68. If the outside addressesdo not match, however, then further processing is unnecessary, and thestored electronic message is marked as processed in step 72.

In step 66, the indexing data for the stored electronic message isretrieved from the message storage memory device 65. The indexing dataof the stored electronic message is then compared to the indexing dataof the current electronic message 51 for proximity at step 68.Preferably, the user may pre-select the storage proximity range withinwhich a stored electronic message must fall to be considered a selectmessage. For example, the user might indicate that all stored electronicmessages indexed with an electronic time-stamp that is more than 12hours different from the time-stamp of the current electronic messageare not proximate and should be disregarded. Alternatively, if thestored electronic messages are indexed with an ordinal value, the usermight, for example, indicate that only those stored electronic messageswithin an ordinal distance of 2 from the current electronic message areto be considered proximate. If the stored electronic message is notproximate, then it is marked as processed in step 72.

If, however, the stored electronic message is both proximate and has amatching outside address, then it is appended to a related message list74 (step 70) before being marked as processed in step 72. The relatedmessage list 74 may comprise a collection of unique identifiers thatallow the select messages to be identified and retrieved, or,alternatively, it might comprise complete copies of the select messages.In step 76, once all of the stored electronic messages have beenprocessed, the select messages are displayed on the viewing screen 78along with the current electronic message 51. Each message may bedisplayed along with its outside address, or alternatively the outsideaddress may be displayed only once since it is the same for eachdisplayed message. In an alternative embodiment, the select messages mayappear on the viewing screen 78 as they are identified in step 70.

FIG. 4 is a flow diagram showing an exemplary method 80 for determiningwhether the outside address of an incoming current electronic messagematches the outside address of a stored electronic message. In step 82,it is determined whether the stored electronic message is an incoming oroutgoing type message. If the stored electronic message is of theincoming type, then the sender address of the current electronic messageis compared with the sender address of the stored electronic message(step 84). The outgoing addresses of the current and stored electronicmessages match if these two sender addresses correspond. (Step 86). If,on the other hand, the stored electronic message is of the outgoingtype, then the sender address of the current electronic message iscompared with the receiver address of the stored electronic message(step 88). If the sender and receiver addresses correspond, then theoutside addresses match (step 86).

FIG. 5 is a flow diagram showing an exemplary method 90 for determiningwhether the outside address of an outgoing current electronic messagematches the outside address of a stored electronic message. In step 92,it is determined whether the stored electronic message is an incoming oroutgoing message. If the stored electronic message is of the incomingtype, then the receiver address of the current electronic message iscompared with the sender address of the stored electronic message (step94). If the receiver and sender addresses correspond, then the outsideaddresses match (step 96). If, however, the stored electronic message isof the outgoing type, then the receiver address of the currentelectronic message is compared with the receiver address of the storedelectronic message (step 98). If these two receiver addressescorrespond, then the outgoing addresses match.

The embodiments described herein are examples of structures, systems ormethods having elements corresponding to the elements of the inventionrecited in the claims. This written description may enable those skilledin the art to make and use embodiments having alternative elements thatlikewise correspond to the elements of the invention recited in theclaims. The intended scope of the invention thus includes otherstructures, systems or methods that do not differ from the literallanguage of the claims, and further includes other structures, systemsor methods with insubstantial differences from the literal language ofthe claims.

1. A method, performed by an electronic communication device,comprising: storing electronic messages; storing criteria fordetermining whether a stored message is related to a current message;displaying a current electronic message, including the current message'soutside address and message body, to a user of the communication device;assessing the relevance of each of the stored messages to the currentmessage based on the previously-stored criteria, and selecting thosemessages that meet the criteria, the criteria being based onchronological proximity of a respective stored message to the currentmessage, wherein the chronological proximity is based on the differencein chronological ranking between the respective assessed message and thecurrent message, said chronological ranking defining the chronologicalorder in which messages are stored; and displaying the selectedelectronic messages along with the current message.
 2. The method ofclaim 1 wherein the current message is a message currently beingaccessed by the user.
 3. The method of claim 1 wherein the currentmessage is a message recently received by the device.
 4. The method ofclaim 1 wherein the current message is a new message being composed bythe user.
 5. The method of claim 1 wherein at least one of the assessedand selected messages is a message received by the device, for which theoutside address is the address of the message's sender.
 6. The method ofclaim 1 wherein at least one of the assessed and selected messages is amessage sent by the device, for which the outside address is the addressof the message's recipient.
 7. The method of claim 1 wherein thecriteria requires the assessed message to be within a pre-selectednumber of the most recently stored messages.
 8. The method of claim 1wherein at least is one of the assessed and selected messages was storedafter transmission of the current message.
 9. The method of claim 8wherein the chronological proximity is based on the length of timebetween storing of the current message and storing of the respectiveassessed message.
 10. The method of claim 8 wherein at least one of theassessed and selected messages has a time stamp later than a time stampof the current message.
 11. The method of claim 8 wherein thechronological proximity is based on number of stored messagestime-stamped between the current message and the respective assessedmessage.
 12. The method of claim 1 wherein the current and selectedmessages share a common outside address, and the outside address isdisplayed only once on the device's screen when displaying the currentand selected messages.
 13. The method of claim 1 wherein the step ofdisplaying the selected messages includes displaying each selectedmessage's outside address and message body.
 14. The method of claim 1wherein the communication device is a wireless communication device. 15.The method of claim 1 wherein the assessed and current messages are SMSmessages.
 16. A method of operating a wireless device, comprisingstoring short messaging service (SMS) messages on the wireless device;displaying, on a viewing screen of the wireless device, a current SMSmessage; the wireless device selecting one of the stored SMS messageshaving an outside address that matches an outside address of the currentSMS message, wherein the outside address of the current SMS message andthe outside address of the selected SMS message include matchingtelephone numbers; and displaying, on the viewing screen of the wirelessdevice, the selected SMS message along with the current SMS message. 17.The method of claim 16, wherein the current SMS message is a stored SMSmessage currently being accessed by the user.
 18. The method of claim16, wherein the current SMS message is a new message being composed bythe user.
 19. The method of claim 16, wherein the selected SMS messageis a message received by the wireless device and the outside address ofthe selected SMS message is an address of the message's sender.
 20. Themethod of claim 16, wherein the selected SMS message is a message sentby the wireless device and the outside address of the selected SMSmessage is an address of the message's recipient.
 21. A wireless device,comprising: a memory; a processor; a viewing screen; and a messagesoftware interface module stored on the wireless device and executableby the processor, the message software interface module configured to:store short messaging service (SMS) messages in the memory; display acurrent SMS message on the viewing screen; and display a select one ofthe stored SMS messages on the viewing screen along with the current SMSmessage, the select SMS message including an outside address thatmatches an outside address of the current SMS message, wherein theoutside address of the current SMS message and the outside address ofthe selected SMS message include matching telephone numbers.
 22. Thewireless device of claim 21, wherein the message software interfacemodule is further configured to identify the select SMS message fordisplay by matching the outside address of the select SMS message withthe outside address of the current SMS message.
 23. The wireless deviceof claim 21, wherein the current SMS message is a stored SMS messagecurrently being accessed by the user.
 24. The wireless device of claim21, wherein the current SMS message is a new message being composed bythe user.
 25. The wireless device of claim 21, wherein the selected SMSmessage is a message received by the wireless device and the outsideaddress of the selected SMS message is an address of the message'ssender.
 26. The wireless device of claim 21, wherein the selected SMSmessage is a message sent by the wireless device and the outside addressof the selected SMS message is an address of the message's recipient.